With the increase in data volume and complexity that needs to be handled by various applications, there is a need for a more flexible data processing architecture that also improves overall performance and efficiency. Stream processing and real-time query processing have become integral for many applications. A conventional data processing architecture involves processing of data which is “at rest” or present in a stored program. Stream processing in contrast is a more complex data processing technology that involves processing of data while it is still “in motion” or as it arrives in a continuous stream in real-time on an input/output channel, and before it reaches structured and/or retentive storage. With stream processing, large rapidly changing data volumes can be aggregated and analyzed as soon as they become available without having to be stored, thereby increasing overall speed and efficiency of data handling and analysis.